這次一路學了 Bubble Sort、Quick Sort、Dijkstra,也真的把它們做成視覺化動畫。 所以最後一天,我想回到前面曾經學過的 Big O,重...
上一篇已經把 Graph 畫面整理好了,今天終於要開始把前面寫好的 Dijkstra 執行過程做成動畫。 一開始我想得很單純,既然之前 Bubble Sort、...
上一篇最後提到,我決定換另一種方式來畫 Graph。 一開始會讓使用者調整 Vertex 數量,是因為當節點很少時,其實很容易直接用肉眼判斷最短路徑;但當資料越...
前面已經把 Dijkstra 寫出來了,接下來終於要開始做視覺化。 我原本的構想是: 使用者可以設定 Node 數量 Node ID 使用流水號產生 Weig...
上一篇已經把 Dijkstra 從手算轉成 TypeScript,可以算出每個 Node 從起點出發的最短 Distance。 但今天重新看結果時,我發現還少了...
上一篇已經跑過一次 Dijkstra,知道尋找最短路徑的過程中,需要記錄幾個重要資訊: Distance: 目前從起點到這個節點的最短距離 Previou...
昨天找出了 Graph 中從 A 到 G 的最短路徑,但如果節點越來越多,光靠人工把所有 Path 都列出來比較,顯然不太實際。 所以今天終於要進入這次 Gra...
圖形最短路徑法 最短路徑是圖形的經典演算法,在一個有像圖形G=(V,E)中,G每一個邊都有一個比例常數W與之對應,想要求G圖形中某一個頂點V0到其他頂點的最少總...
貪婪(Greedy)演算法 貪婪演算法是考慮局部最佳解,在子結構中解決問題是相當有利的,但放入整體問題中,不一定會是最佳解。 貪婪演算法與動態規劃的不同在於它...